import router from "@/router";
import axios from "axios";

// 获取token方法
function getToken() {
  const token = localStorage.getItem("token");
  return token ? token : "";
}
// // 创建一个自定的axios方法(比原axios多了个基地址)
// // axios函数请求的url地址前面会被拼接基地址, 然后axios请求baseURL+url后台完整地址

const service = axios.create({
  baseURL: "/",
  timeout: 15000, // 请求超时时间
  headers: {
    token: getToken(), // 在请求头中添加token
  },
});
// 获取token

// 添加请求拦截器
service.interceptors.request.use((config) => {
  // 在发送请求之前做些什么
  // 设置请求头（header）

  config.headers["token"] = getToken();

  return config;
});
// 添加响应拦截器
service.interceptors.response.use(
  //正常响应
  (response) => {
    // console.log("响应拦截器打印:" + response);

    if (response.data.msg == "NOT_LOGIN" && response.data.code == 0) {
      this.$message.error("请登录");
      localStorage.removeItem("token");
      localStorage.removeItem("activeIndex");
      router.push("/admin/login");
      return false;
    }
    return response;
  }
);
export default service;
